Automatic generation of a photo guide

ABSTRACT

An apparatus, method and an image quality guide document are disclosed. The method includes, for at least one image in a set of images undergoing image enhancement, identifying image quality-related features for the image based on enhancements being applied to the image, identifying image content-related features based on content of the image, determining a content-based degradation of the image based on the identified image quality-related features and image content-related features, and generating a thumbnail of the image. The method further includes generating an image quality guide document for the set of images in which at least one of the thumbnails is associated with a respective text description that is based on the determined content-based degradation.

CROSS REFERENCE TO RELATED PATENTS AND APPLICATIONS

The following copending applications, the disclosures of which areincorporated herein by reference in their entireties, are mentioned:

U.S. application Ser. No. 11/524,100, filed Sep. 19, 2006, entitled BAGSOF VISUAL CONTEXT-DEPENDENT WORDS FOR GENERIC VISUAL CATEGORIZATION, byFlorent Perronnin.

U.S. application Ser. No. 11/637,984, filed Dec. 13, 2006, entitledPRINTER WITH IMAGE CATEGORIZATION CAPABILITY, by Anthony Digby.

U.S. application Ser. No. 11/801,230, filed May 9, 2007, entitled PRINTJOB AESTHETICS ENHANCEMENTS DETECTION AND MODELING THROUGH COMBINED USERACTIVITY ANALYSIS AND CONTENT MATCHING, by Luca Marchesotti, et al.

U.S. application Ser. No. 11/767,739, filed Jun. 25, 2007, entitledCLASS-BASED IMAGE ENHANCEMENT SYSTEM, by Marco Bressan, et al.

U.S. application Ser. No. 12/033,434, filed Feb. 19, 2008, entitledCONTEXT DEPENDENT INTELLIGENT THUMBNAIL IMAGES, by Gabriela Csurka.

BACKGROUND

The exemplary embodiment relates to the field of image processing. Itfinds particular application in connection with the provision offeedback on the automated enhancement of digital images, and isdescribed with particular reference thereto. However, it is to beappreciated that it may find more general application in imageclassification, image content analysis, image archiving, image databasemanagement and searching, and so forth.

Photographers are now using digital image capture devices, such ascameras, cell phones, and optical scanners, to capture images in digitalformat. The captured images are often sent to photofinishing services orcontent-sharing communities. Regardless of the final medium in which theimages will be managed, shared and visualized, the quality expectationsof users are growing. These services often make use of automated orsemi-automated enhancement methods to correct detected degradations inan image. For example, features such as automatic color balance orred-eye correction are now standard components in many image editingapplications. Acquisition conditions, user expertise, compressionalgorithms and sensor quality can seriously degrade the final imagequality. Image enhancement tools attempt to compensate for thisdegradation by altering image features for subsequent analysis,distribution or display. Examples of these image features includecontrast and edge enhancement, noise filtering for a wide variety ofnoise sources, sharpening, exposure correction, color balanceadjustment, automatic cropping, and correction of shaky images.Traditional photofinishing services available online enable clients toenhance images manually or automatically through proprietary algorithmsbefore printing however, no feedback is given to clients on the qualityof the original images and on the effect of the applied enhancements inthe final prints.

When the enhancements are performed automatically, without user input,the amateur photographer may not notice the enhancements without a closeinspection of the finished product, and thus is often unaware that thephotofinishing service has considerably improved the visual appearanceof the image in the process. Moreover, the photographer does notappreciate that changes in shooting techniques could avoid similar imagedegradations in the future. Perceiving the quality of a digital image isin general a difficult exercise for non-expert users. In particular, itis not easy to spot specific degradations (e.g., low contrast vs. lowsaturation, incorrect white balance, and the like) or to understand howthese degradations could have been avoided at the time the photo wastaken.

INCORPORATION BY REFERENCE

The following references, the disclosures of which are incorporated intheir entireties by reference, are mentioned:

U.S. Pub No. 20030151674, published Aug. 14, 2003, entitled METHOD ANDSYSTEM FOR ASSESSING THE PHOTO QUALITY OF A CAPTURED IMAGE IN A DIGITALSTILL CAMERA, by Lin, discloses a method and system for assessingin-camera the photo quality of a captured digital image for the purposeof providing the digital still camera user with photo quality feed back.

U.S. Pub. No. 20070005356, published Jan. 4, 2007, entitled GENERICVISUAL CATEGORIZATION METHOD AND SYSTEM, by Florent Perronnin, disclosestechniques for classifying images based on class visual vocabulariesconstructed by merging a general visual vocabulary with class-specificvisual vocabularies.

U.S. Pub. No. 20070258648, published Nov. 8, 2007, entitled GENERICVISUAL CLASSIFICATION WITH GRADIENT COMPONENTS-BASED DIMENSIONALITYENHANCEMENT, by Florent Perronnin, discloses an image classificationsystem with a plurality of generative models which correspond to aplurality of image classes. Each generative model embodies a merger of ageneral visual vocabulary and an image class-specific visual vocabulary.A gradient-based class similarity modeler includes a model fitting dataextractor that generates model fitting data of an image respective toeach generative model and a dimensionality enhancer that computes agradient-based vector representation of the model fitting data withrespect to each generative model in a vector space defined by thegenerative model. An image classifier classifies the image respective tothe plurality of image classes based on the gradient-based vectorrepresentations of class similarity.

U.S. Pat. Nos. 5,357,352, 5,363,209, 5,371,615, 5,414,538, 5,450,217;5,450,502, 5,802,214 to Eschbach, et al., U.S. Pat. No. 5,347,374 toFuss, et al., and U.S. Pat. No. 7,031,534 to Buckley disclose automatedenhancement methods.

Csurka, et al., “Visual Categorization with Bags of Keypoints,” ECCVInternational Workshop on Statistical Learning in Computer Vision,Prague, 2004, discloses a method for generic visual categorization basedon vector quantization.

Perronnin, et al., “Adapted Vocabularies for Generic VisualCategorization,” ECCV, 9th European Conference on Computer Vision, Graz,Austria, May 7-13, 2006, discloses methods based on a universalvocabulary, which describes the content of all the considered classes ofimages, and class vocabularies obtained through the adaptation of theuniversal vocabulary using class-specific data.

BRIEF DESCRIPTION

In accordance with one aspect of the exemplary embodiment, an automatedmethod for generating an image quality guide document includes, for atleast one image in a set of images undergoing image enhancement,identifying image quality-related features for the image based onenhancements being applied to the image, identifying imagecontent-related features based on content of the image, determining acontent-based degradation of the image based on the identified imagequality-related features and image content-related features, andgenerating a thumbnail of the image. The method further includesgenerating an image quality guide document for the set of images inwhich at least one of the thumbnails is associated with a respectivetext description that is based on the determined content-baseddegradation.

In accordance with another aspect, an apparatus for generating an imagequality guide document for a set of images includes an enhancementdetector which outputs image quality-related features for images in theset based on enhancements being applied to the images. An image contentanalyzer outputs image content-related features for images in the set. Adegradation classifier receives the output image quality-relatedfeatures and image content-related features and outputs a content-baseddegradation for at least one of the images in the set. A thumbnailgenerator generates thumbnails for images in the set. An image qualityguide document generator generates an image quality guide document forthe set of images in which at least one of the thumbnails is associatedwith a respective text description that is based on the determinedcontent-based degradation.

In accordance with another aspect, an image quality guide documentrendered in tangible media includes an arrangement of thumbnails for aset of processed images and automatically generated associated textdescriptions associated with at least some of the thumbnails, each textdescription describing a content-based degradation of the image and animage enhancement applied to correct the degradation.

In accordance with another aspect, an image processing method includesapplying at least one image enhancement to at least one of a set ofinput images to generate a set of enhanced images. Image quality-relatedfeatures for the at least one image based on the at least one appliedenhancement are identified. Image content-related features areidentified based on content of the at least one image. Thumbnails of theimages are generated. An image quality guide document is generated forthe set of images in which at least one of the thumbnails is associatedwith a respective text description that is based on the identified imagequality-related features and image content-related features.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of a portion of a photo guide in accordancewith one aspect of the exemplary embodiment;

FIG. 2 schematically illustrates the generation of the photo guide ofFIG. 1;

FIG. 3 is a functional block diagram of an apparatus for generation of aphoto guide in accordance with another aspect of the exemplaryembodiment; and

FIG. 4 illustrates steps in a method for generation of a photo guide inaccordance with another aspect of the exemplary embodiment.

DETAILED DESCRIPTION

Aspects of the exemplary embodiment relate to a system and method forautomatically creating an image quality guide document, particularly inthe context of photo-finishing applications. The exemplary image qualityguide document or “photo guide” is composed of thumbnails of images,together with accompanying text descriptions that are generated in ahuman readable form based on content-based image degradations. In theexemplary method, features describing the perceptual quality and contentof a set of input images are extracted. Image degradations can beclassified based on these features and related to eventual photoshooting tips through a look-up table.

A digital image includes image data for each pixel of a generallytwo-dimensional array of pixels. The image data may be in the form ofgray scale values, where gray can refer to any color separation, or anyother graduated intensity scale. While particular reference is madeherein to the images being photographs, it is to be appreciated thatother digitally acquired images, such as images acquired by an opticalscanner, may be similarly processed.

FIG. 1 illustrates an exemplary photo guide 10 by way of example. Thephoto guide 10 may be a digital document or a hardcopy document which,for a set of processed images, identifies image quality degradationsand/or the enhancement methods used to correct the degradations, andoptionally provides tips for improving image capture techniques, with aview to assisting the user to avoid similar degradations in the future.

As will be appreciated, in the context of enhancements, not all imageenhancement methods that are applied to an image result in what would beconsidered an improvement by an observer. Moreover, observers may differin what is considered to be a visual improvement. However, for ease ofdescription, all operations which are performed to correct an identifieddegradation will be referred to as enhancements, irrespective of whetherthey would be considered as such by an observer.

The guide 10 includes a set of thumbnail images 12, one for each of theimages in a set of processed images. In general, each thumbnail imagecomprises image data derived from the respective image. Usually, thethumbnail image 12 contains less information than the original image.For example, each thumbnail image 12 may be a reduced resolution and/orcropped, digital image generated from the original image or processedoriginal image. All of the thumbnails in the set may be the same size.In some embodiments, the image may be otherwise digitally modified increating the thumbnail, for example by conversion from color tomonochrome (e.g., a black and white thumbnail). In other embodiments, arepresentative portion of the image is automatically selected as thethumbnail, avoiding the need for reducing resolution or resizing.Indeed, the thumbnail can be any visual representation of the imagewhich allows images to be distinguished from each other in the set. Inone embodiment, the thumbnail is a context-dependent image, asdescribed, for example, in above-mentioned application Ser. No.12/033,434. In such an approach, the portion of the image selected asthe thumbnail may be dependent on the context in which the image is tobe used. For example, if the user is known to be interested primarily infaces, a region of the image can be identified with suitable facerecognition software and used as a basis for determining a suitable croparea.

Associated with each thumbnail, e.g., adjacent thereto in the guide 10,is a text description 14, which a serves as a guideline. The textdescription can be a phrase, sentence or other text string in a naturallanguage, such as English. The text description, for an image which hasundergone an automated image enhancement process, is derived from adetermined content-based degradation for the original image, which isbased on its perceptual quality and content based features. In theexemplary embodiment, the photo guide 10 is arranged in columns. A firstcolumn includes the set of thumbnails, arranged in the order in whichthe corresponding set of processed images is to be output. A secondcolumn includes the text description 14 for each thumbnail in the sameorder. Thus, each row includes a thumbnail and its associated textdescription (if one has been generated). Other methods of arranging thethumbnails 12 and text descriptions 14 are, however, contemplated. Forexample, the thumbnails may be arranged in a circle with textdescriptions forming a corresponding inner or outer circle.Alternatively, lead lines may be used to associate the text descriptionswith the respective thumbnails. Or, a numbering system or other uniqueidentifiers may be used to associate thumbnails with corresponding textdescriptions.

A shooting tip 16, which identifies an image acquisition technique foravoiding the determined content-based degradation in the future, is alsoassociated with the thumbnail 12. In general, only those images whichhave undergone enhancement have an associated text description 14 andoptionally also a shooting tip 16. In the case of a digital guide 10,the tip may open in another window when a tip icon 18 is actuated, e.g.,by clicking on the icon. As for the text description, other ways ofassociating the shooting tip 16 with the corresponding thumbnail 12 arecontemplated. In the exemplary embodiment, text descriptions 14 and theshooting tips 16 are both based on a determined degradation for theimage. The degradation, in turn, is based on a content-basedcategorization of the image as well as image-quality related factorsderived from information on applied enhancement(s), as described ingreater detail below.

The photo guide 10 may further include identifying information 20. Forexample, the set of images may be identified according to a particularuser, date, and title of the set (album title), or otherwise uniquelyidentified.

With reference now to FIG. 2, a brief overview of an exemplary processfor generating a photo guide 10 of the type illustrated in FIG. 1 isshown. The process takes as input a set of original digital images 22 tobe processed. The input images 22 undergo image enhancement and areoutput as a set of enhanced images 24, in either digital or hardcopyformat. Thumbnails 12 are generated for the images. Image contentanalysis, together with information on the enhancement(s) applied, isused in degradation classification. The output degradation, as processedby a natural language generator, is used in the creation of the photoguide 10. A shooting tip look up table (LUT) generates shooting tips forthe guide 10, based on the degradation classification. The guide 10,together with the enhanced images 24, are output, e.g., sent to a user.

As shown in FIG. 2, the exemplary method is divided into two stages: afeatures extraction stage and a photo guide creation stage. In thefeatures extraction stage, image quality-related features f_(a) areextracted, as well as image content-related features f_(c). The imagequality-related features f_(a) may derived from information related tothe enhancement applied to the image and/or a degradation on which theapplied enhancement is based. The image content-related features f_(c)are derived from an analysis of image content. Both these features areused in the photo guide creation stage for identifying a content-baseddegradation d for each enhanced image and optionally an associatedshooting tip 16.

FIG. 3 is a functional block diagram illustrating an image processingsystem in which an exemplary apparatus 30 for generating a photo guide10 operates. The photo-guide generation apparatus 30 may be embodied ina computing device 32, such as a general purpose computer, server, orother dedicated computing device. A set 33 of digital images 22 to beprocessed is input to an image enhancement module 34, which may beresident on the computing device 32, as shown, or communicatively linkedthereto. In general, given an input image, the image enhancement module34 improves the perceptual quality by applying combinations ofenhancement methods (e.g., one or more corrections for sharpness, colorbalance, saturation, global contrast, local contrast, noise, and thelike). The enhancement module 34 may execute automated techniques forimage enhancement in order to generate a set of enhanced photographs 24.In general, the enhancement module 34 determines whether an imagewarrants an enhancement and applies one or more selected enhancements,as appropriate, to each image 22. Of course, for any given set ofimages, one or more, or even all of the images 22 may undergo noenhancement if the enhancement module 34 determines that no enhancementis needed. The enhancement module 34 may be embodied in hardware, orsoftware or both. In the exemplary embodiment, the enhancement module 34includes a processor which executes instructions stored in associatedmemory for identifying image quality related parameters and forperforming enhancements which modify these parameters.

The images 22 may be input to the image enhancement module 34 from asource of digital images 36, such as a personal computer, memory storagedevice, digital image acquisition device, such as a camera or scanner,or the like. In the exemplary embodiment, the source 36 of digitalimages is linked to the computing device by a wired or wireless link 38,such as a local area network or a wide area network, such as theInternet.

The exemplary photo-guide generation apparatus 30 may be embodied insoftware, hardware or a combination of both. In the exemplaryembodiment, the apparatus 30 includes a processor 40 (which executesinstructions stored in associated memory 42 for performing the exemplarymethod disclosed herein. Processor 40 may be the same processor as usedfor the enhancement module 34 or a different processor. The processor 40includes/executes various processing components, which may be separatemodules, including an enhancement detector 44, an image content analyzer46 a degradation classifier 48, a natural language generator 50, athumbnail generator 52 and a guide assembler 54. The processor 40accesses a shooting tip LUT 56, which may be stored in memory 42. Theprocessing components 44, 46, 48, 50, 52, 54 of the apparatus and memory42 may communicate via a data/control bus 58.

The memory 42 may represent any type of computer readable medium such asrandom access memory (RAM), read only memory (ROM), magnetic disk ortape, optical disk, flash memory, or holographic memory. In oneembodiment, the memory 42 comprises a combination of random accessmemory and read only memory. In some embodiments, the processor 40 andmemory 42 may be combined in a single chip. In one embodiment, memory42, or separate memory, stores instructions for performing the exemplarymethod as well as providing temporary storage for input images and theprocessed images.

The operation of each of the processing components 44, 46, 48, 50, 52,and 54 will be best understood with reference to the method, discussedfurther below. Briefly, the enhancement detector 44 determines whichenhancement method has been applied to a given image. In the exemplaryembodiment, the detector 44 receives a record of the enhancementsperformed on the original images. This record may be in the form ofenhancement logs 60 that are output from the image enhancement module34. From these records 60, image quality-related features f_(a)describing the perceptual quality (degradation) of the images and/or theenhancements applied to the image by the enhancement module 34 areidentified.

The image content analyzer 46 analyzes the image 22 according to itsvisual content. In general, the analyzer 46 provides genericdescriptions about the visual content of the input images according to apredefined set of visual categories. In one embodiment, the analyzer 46extracts image-content content-based features f_(c) from the image 22.The analyzer 46 may include a classifier (or set of classifiers) whichhas/have been trained on a training set of images. The training imageshave been manually categorized according to their image content and thusa probability model can be developed which allows new images to beclassified according to their identified features. In one embodiment,the analyzer 26 includes a set of binary classifiers which each classifythe image for one of the visual categories (i.e., as being a member of avisual category or not) based on an identified set of imagecontent-based features f_(c). In another embodiment, the analyzer 46outputs, for each of a set of categories, a probability that the imageis in that category, based on the identified set of image content-basedfeatures f_(c).

The set of visual categories can include, for example, categories whicha typified by different shooting problems, such as “winter” (problemswith reflections from snow), “indoors” (problems resulting from poorlighting), “portraits” (illumination problems leading to problems incorrectly matching skin color of people, redeye problems, etc.),“landscapes” (problems of overexposure), “seascapes,” including beachscenes (problems in capturing moving water as well as overexposureproblems), “urban” (problems with contrast between dark buildings andsky), “night lights” (problems with noise and contrast), “flowers”(problems with saturation), and the like. As will be appreciated, thenumber and types of categories, and optionally sub-categories of thesecategories, used in generating the image content features are notlimited and may vary, for example, depending on the types of imagesbeing processed.

The degradation classifier 48 determines the degradation affecting theimage 22 by taking into account image content features f_(c) output bythe analyzer 46 and image quality related features f_(a) based on theapplied enhancements. The degradation classifier 48 receives, as input,the features f_(a) and f_(c) and outputs a content dependent degradationd for the image which is a function of both the extracted image contentfeatures f_(c) and image quality related features f_(a).

The natural language generator 50 generates a text description in humanreadable form, based on the applied enhancements f_(a) and assigneddegradation d which will serve as part of the text description 14 forthat image 22. In particular, it assembles in a human readable sentence(photo guideline) the photo degradations, the applied enhancements. Thegenerator also generates one or more shooting tips 16 by accessing theLUT 56.

The thumbnail generator 52 generates a thumbnail image, based on theoriginal or processed image 22. In one embodiment, the thumbnail isgenerated by reducing the size and optionally also reducing theresolution of the original or enhanced image. Typically the thumbnail isabout 2-3 cm in its largest dimension so that a group of at least about6-10 of the thumbnails 12 can be arranged in a column on a single pageof the photo guide 10.

The shooting tip LUT 56 is a look-up table or other data structure thatrelates degradation d to suggestions (tips) on how to avoid degradationaffecting the images. The exemplary LUT 56 stores shooting tips indexedby degradation classification d. Each degradation classification may belinked, in the LUT, to one or more associated shooting tip 16.

The guide assembler 54 assembles the image thumbnails 12 and associatedtext descriptions 14 and shooting tips 16 for the set 33 of images, toform the photo guide 10. The guide 10 may be output in tangible media.The tangible medium may be a hardcopy document or a data storage deviceon which the guide is stored, such as a disk, memory stick, or the like.For example, the guide 10 may be output to a rendering device 62, to berendered in hardcopy. The rendering device 62 may be a printer whichprints the guide 10 on a suitable print material, such as copy paper orphoto-quality paper. Printer 62 may be the same device which prints thephotographs 24, or a separate device. Alternatively, the guide 10 may beoutput in electronic form.

FIG. 4 illustrates an exemplary method for generating a photo guide 10.As will be appreciated, some of the steps described may take placecontemporaneously or in an order different from that described. Themethod begins at S100.

At S102, a set 33 of images is submitted for processing. A print shopoperator may receive the set 33 of images to be printed from a specificclient via e-mail, file transfer protocol (FTP) upload, CD Rom, DVD, orany other optical medium, a RAM, a PROM, an EPROM, a FLASH-EPROM, USBkey, or other memory chip or cartridge, through the use of workflowmanagement tools such as Press Sense's iWay™, or through a web interfaceto which a customer inputs a request via a web browser. Where a customermakes use of a web portal for submission of the images, various data maybe associated with the images, such as the customer ID, date, number ofimages, type of job, and the like. In other formats, a request formassociated with the images may provide some or all of this information.

At S104, for each image 22 in turn, the image is automatically evaluatedby image enhancement module 34 and enhancements appropriate to anydetermined degradations are applied.

At S106, a log 60 containing information concerning the appliedenhancements is received from the image enhancement module and stored,e.g., in memory 42.

At S108, a thumbnail 12 is generated for each image and may betemporarily stored in memory 42.

At S110, for each image which is being enhanced, image quality featuresf_(a) are identified, based on the logs 60 of applied enhancements.

At S112, for each enhanced image, image content features f_(c) areidentified. This step may be automatically performed for all images oronly for those images for which an enhancement has been applied.

At S114, for each enhanced image, a content-based degradation d isdetermined for the image, based on the image quality and contentfeatures f_(a) and f_(c).

At S116, a shooting tip may be identified for the degradation d.

At S118, a text description 14 is generated, based on the enhancementmethod and/or identified degradation. The text description 14 may be asentence, phrase, or multiple sentences. The text description maybriefly describe the identified degradation, the image enhancementmethod used and the intended result.

At S120, the image thumbnail 12, text description 14 and shooting tip(s)16 for each enhanced image 24 are assembled into the photo guide 10. Inone embodiment, the thumbnails of all images in the set 33 are includedin the photo guide, with the text description left blank for theunenhanced images, or otherwise configured to indicate such images ashaving not undergone enhancement. Additional information may beincorporated into the photo guide, such as user name, job title, date,and other identifying information 20.

At S122, the completed guide 10 is output. The guide may be rendered intangible media, such as by printing on paper, or stored in digital form.The printed enhanced images 24 and printed guide 10 may be packagedtogether and shipped to a customer and/or sent to the customer inelectronic form.

The method ends at S124, and may be repeated for each new set 33 ofimages to be processed.

The method illustrated in FIG. 4 may be implemented in a computerprogram product that may be executed on a computer. The computer programproduct may be a tangible computer-readable recording medium on which acontrol program is recorded, such as a disk, hard drive, or may be atransmittable carrier wave in which the control program is embodied as adata signal. Common forms of computer-readable media include, forexample, floppy disks, flexible disks, hard disks, magnetic tape, or anyother magnetic storage medium, CD-ROM, DVD, or any other optical medium,a RAM, a PROM, an EPROM, a FLASH-EPROM, or other memory chip orcartridge, transmission media, such as acoustic or light waves, such asthose generated during radio wave and infrared data communications, andthe like, or any other medium from which a computer can read and use.

The exemplary method may be implemented on one or more general purposecomputers, special purpose computer(s), a programmed microprocessor ormicrocontroller and peripheral integrated circuit elements, an ASIC orother integrated circuit, a digital signal processor, a hardwiredelectronic or logic circuit such as a discrete element circuit, aprogrammable logic device such as a PLD, PLA, FPGA, or PAL, or the like.In general, any device, capable of implementing a finite state machinethat is in turn capable of implementing the flowchart shown in FIG. 4,can be used to implement the method for generating a photo guide.

Various aspects of the exemplary apparatus and method will now bedescribed in greater detail.

Image Enhancement

The image enhancement module 34 may comprise an automated ImageEnhancement (AIE) module, as described, for example, in U.S. Pat. Nos.5,357,352, 5,363,209, 5,371,615, 5,414,538, 5,450,217; 5,450,502,5,802,214, 5,347,374, and 7,031,534, incorporated by reference, and madeavailable in certain applications such as Xerox's FreeFlow™ DocuSP™software suite and in Xerox's FreeFlow™ Process Manager software, whichis part of Xerox's FreeFlow™ Digital Workflow Collection.

In general, the enhancement module 34 automatically evaluates a numberof image quality features for an input image to determine whether theimage meets predetermined acceptable values for these features (whichmay be expressed in terms of threshold values, ranges, or the like).Exemplary image quality features for determining whether an enhancementshould be applied may be selected from: image contrast values,saturation, exposure, color balance, brightness, background color, redeye detection, and combinations thereof. These features may be assessedglobally (over the entire image) or locally, allowing different regionsof an image to be enhanced differently.

Techniques for determining these features are described, for example, inthe above-mentioned patents, and may include generating statistics suchas noise measures or luminance and chrominance distributions on a lowresolution version of the image. U.S. Pat. No. 5,414,538, for example,incorporated herein by reference, discloses receiving the input imagedefined in terms of red-green-blue (RGB) signals, converting the RGBsignals to corresponding luminance-chrominance signals including atleast one signal that represent overall image intensity, and comparingthe intensity signal to upper and lower intensity threshold signals thatdefine the acceptable levels of brightness and darkness in the image. Atthe decision stage, if one of the thresholds is exceeded, the imagesignal representative of image intensity is processed according to aselect equation, and a TRC associated with the image is adjusted so thatexposure characteristics of the resulting output image are perceived tobe superior to those of the input image. Similar techniques forluminance are described in U.S. Pat. No. 5,450,502, incorporated byreference.

Exemplary enhancement methods include sharpening, exposure correction,color balance and saturation adjustment, contrast and edge enhancement,blocking artifact reduction, and noise reduction. Other enhancements arefocused on specific problems, such as red-eye correction, automaticcropping, or glass glare removal.

Sharpness refers to the presence of crisp edges and fine details in animage. Techniques for sharpening often use filters, which may be appliedlocally or globally. Exposure refers to the average of the globaldistribution of intensity along the dynamic range of the image. Makingthe image darker or lighter can bring details from the shadows or givedepth to the colors of the photograph. The automatic setting ofexposure, a feature present in most digital cameras, can yieldunrealistic results and exposure correction attempts to overcome thisproblem. One approach to correcting exposure is to apply gammacorrection to the image intensity. For example, the gamma parameter maybe determined automatically from the histogram of the input image.

Color balance or white balance is the process of adjusting the colors toresemble perceptual response and is generally a global enhancement. Thehuman visual system ensures the perceived color of objects remainsrelatively constant under varying illumination and reflectanceconditions, e.g., color constancy. When imaging devices are tailored tocommon illuminants, e.g., D65, they can introduce strong color castswhen the scene has another light source. In one approach to colorbalance, the average chrominance on any given image is assumed to beapproximately gray. In another approach, it is assumed that a specularsurface on the image will reflect the actual color of the light source.Other closely related approaches which may be employed are white pointand black point approaches.

Saturation refers to the vividness of colored objects in an image. Acolor with more gray is considered less saturated, while a bright color,one with very little gray in it, is considered highly saturated. Thesaturation of a color can affect the emotional reaction to an image.Colors that have low saturations are often seen as dull and boring, butcan also be thought of as restful and peaceful. Highly saturated colors,on the other hand, are more vibrant and emotionally aggressive. Inconventional automatic enhancement approaches, where neither the imagecontent nor the user's intent is known, the system detects and modifiesthe extremes of color saturation to bring the image saturation to agenerally acceptable level. An alternative to the direct modification ofthe saturation value in HSV space, is to interpolate or extrapolatebetween the original image and a black-and-white version of the image.Such techniques tend to be rather conservative as user preferences forsaturation enhancements often depend on the semantic content of theimage. In one embodiment, an intent-based enhancement system is used, inwhich color saturation enhancement modes are selected by a model with aview to reproducing the user's intent by factoring in the class of theimage (e.g., “snow”, “buildings”, or “seascape,” etc.), as disclosed,for example, in above-mentioned application Ser. No. 11/767,739. Thus,the level of enhancements need not be as conservative, for some of theclasses, as conventional techniques.

Contrast refers to the efficient use of the dynamic range. Conventionalcontrast enhancements aim to make image details more evident to a humanobserver. In the exemplary intent-based system, this is not necessarilyso, depending on the class. Contrast enhancement can be achieved viaglobal approaches or local approaches, e.g., through tone reproductionoperators (TROS) (See, for example, Marco Bressan, Christopher R. Dance,Herve Poirier, and Damian Arregui. Local Contrast Enhancement. IS&T/SPIESymposium on Electronic Imaging, San Jose, Calif., USA, 28 Jan.-1 Feb.2007). Optionally, enhancements may employ generative models to recoverthe reflectance which may be lost, using edge preserving filters toavoid halo effects.

Blocking artifacts are the result of coding, resizing or compressing theimage. One approach to reducing blocking artifacts is to low-pass filterthe pixels directly adjacent to the block boundaries. Other techniques,which may be useful in the exemplary system may employ a Gaussianspatial domain filter, linear block boundary filters, anisotropicGaussian filters perpendicular to the block boundary, edge preservingspace-variant region-based filters, wavelet transform to smooth blockingeffects while preserving edges, and combinations thereof. Techniques maybe employed for estimating the blockiness of an image to adjust thelevel of correction, and avoid unnecessary degradation.

Noise can result from imperfect instruments, problems with the dataacquisition, transmission and compression, and other sources of noise onthe image. Random image noise corresponds generally to visible grain orparticles present in the image which are generally caused by theelectronic noise in the input device sensor and circuitry (e.g.,scanner, digital camera). Intensity spikes speckle or salt and peppernoise will only affect a small number of image pixels. They are causedby flecks of dust on the lens or inside the camera, dust or scratches onscanned photography or film, faulty CCD elements, “hot pixels” occurringwith long exposures with digital camera, etc. Banding noise can beintroduced when the data is read from the digital sensor (e.g., scannerstreaks) and scratches on the film will appear as additional artifactson the images. Exemplary enhancements aimed at removal of noise whichmay be utilized herein may include convolving the original image with amask (e.g., Gaussian); use of median filters for removing salt andpepper noise while preserving image detail, or use of a wavelet,anisotropic diffusion, or bilateral filtering techniques, andcombinations thereof.

Image blur is a form of bandwidth reduction typically caused by relativemotion between the camera and the original scene or by an optical systemthat is out of focus. It can affect the totality or part of an image andmany cameras today have built in solutions to stabilize image capture.Exemplary enhancements aimed at reducing image blur which may beutilized herein include methods for solving the restoration problem fromblind de-convolution, approaches that combine power-laws with waveletdomain constraints, methods for removing the specific blur due to camerashake, and combinations thereof. Automatic implementation of suchtechniques may include the estimation of the level of blur or motionblur for the different image regions, prior to correction.

In one embodiment, the automated enhancement may be a class basedenhancement as described, for example, in U.S. application Ser. No.11/767,739, by Marco Bressan, et al., the disclosure of which isincorporated by reference. In this embodiment, the automated enhancementmodule 34 takes as input the class to which an image has been assigned,as output by the analyzer 46. Other enhancement techniques which may beapplied are discussed in the Ser. No. 11/767,739 application.

It is to be appreciated that the exemplary apparatus and method are notlimited to any particular type of automated image enhancement method.For generating features f_(a), some record which allows a determinationof which enhancements from a set of possible enhancements have beenactuated (applied) and/or the image quality parameters which lead to theactuation is generally sufficient.

Image Enhancement Detection and Image Quality Features Identification

Step S110 may include detection of applied enhancements and a level atwhich the enhancement is applied, for example, by keyword searching inthe logs 60 generated by the automated enhancement module 34. Thekeywords are used to identify words known to be used by the enhancementmodule 34 in connection with a particular enhancement method. Forexample, in the case of local contrast, the log may report “performingLCE correction.”

For each enhancement method employed by the enhancement module 34, anactivation threshold is defined. The activation threshold specifies aminimum or maximum value or range for an identified image qualityparameter that actuates the enhancement. If the threshold is met, theenhancement is considered to have been applied, for purposes ofidentifying the image quality features. The activation threshold may beset such that minor enhancements can be ignored for purposes ofidentifying the image quality features.

Thus for example, where the enhancement is related to “noise,” and animage quality parameter (noise parameter) having a value greater than athreshold value, such as 0.0 is obtained, the noise enhancement isconsidered to have been applied. Similarly, for “sharpness,” the imagequality parameter may be an edge factor with a threshold of less than,for example, 1. If this threshold is satisfied, sharpness is consideredto have been enhanced. If the threshold is not satisfied, i.e., when anedge factor of greater than 1 is detected, a sharpness enhancement isconsidered not to have taken place, even though some correction may havebeen applied by the image enhancement module 34. For color balance, anyvariation in the black and white points may be used to specify the colorbalance as being enhanced, and so forth. Each of the features f_(a) maybe based on an enhancement method and a corresponding level at which theenhancement is applied. The level may be binary, e.g., 1 for applied (atleast meeting the threshold) or 0 for not applied (does not meet thethreshold). Or the features may allow for more specific quantificationof the extent of enhancement, such as values which can vary between amaximum and minimum value, such as between 0 and 1.

A features vector comprising the set of features f_(a) may be generated.Each of the set of enhancement methods may be assigned a uniqueidentifier, such as a number or other ID. The vector may be indexedaccording to the enhancement ID, and includes the level of activationdetected for each enhancement method. For example, a binary vector mayinclude one value for each of seven enhancements, such as[0,1,1,0,0,0,0] indicating that only the second and third enhancementshave been applied at a level which at least meets the respectivethreshold.

Image Content Analysis and Identification of Image Content-RelatedFeatures

Image content analysis (S112) may be performed by any suitable techniquewhich allows images to be categorized based on image content. In theexemplary embodiment, it is assumed that image quality and image contentare independent: i.e., image quality features f_(a) are not consideredin determining image content features f_(c). In other embodiments, imagequality may be considered in assigning image content features.

In one embodiment, the analyzer 46 comprises a generic type of visualclassifier, such as the Xerox Generic Visual Classifier (GVC). Such aclassifier labels patches (small regions) of an image based on semanticcontent, for example, by generating low level features, such as afeatures vector, one for each patch. Based on the extracted low levelfeatures, image content features f_(c) for the image are identified.Each of the image content features f_(c) may relate to a specific one ofa set of image content categories (such as winter, indoors, portraits,landscapes, seascapes, urban, night lights, flowers, and the like).

The analyzer 46 may be trained on a training set of images which havebeen manually assigned to one or more of the set of predefined imagecontent categories, based on their perceived image content, and whoselow level features have been computed. The trained analyzer 46 mayoutput a features vector based on the image content features f_(c). Thevector may be generated in a similar manner to the image quality vectoroutput by enhancement detector 44, with each feature f_(c) being indexedaccording to a unique ID. In other embodiments, the analyzer 46 outputsa single, most probable, category for each image in the set of images,which constitutes the image content features f_(c).

Exemplary categorization techniques which may be used herein are to befound in U.S. application Ser. No. 11/524,100, by Florent Perronnin, andU.S. Pub. Nos. 20070005356 and 20070258648, the disclosures of all ofwhich are incorporated herein in their entireties by reference. Ingeneral, these categorization techniques based on image content mayencompass a set of operations that transforms pictorial inputs intocommonly understood descriptions. Automated techniques have beendeveloped which assign keywords to an image based on its high-levelcontent. These techniques can analyze the whole scene or focus onobjects within the image. Keyword assignment may be associated with aconfidence value. The image is then labeled with keywords for which theconfidence value exceeds a threshold confidence value. The most commontasks are recognition, classification, or detection. Recognitionconcerns the identification of particular object instances. Object andscene classifications are the tasks of assigning one or more generaltags to an image. Detection is the problem of determining if one or moreinstances of an object occur in an image and, typically, estimatelocations and scales of the detected instances.

In some multi-class categorization systems, statistical models are usedto learn a sort of dictionary between individual image blobs (segments)and a set of predefined keywords.

In one embodiment, the classification includes a bag of visual word(BOV) based approach. In this approach, the image is first characterizedby a histogram of visual word counts. The visual vocabulary is builtautomatically from a training set of images. To do this, some imagedescriptors are extracted from the image. Those descriptors aregenerally based on texture, color, shape, structure, or theircombination and are extracted locally on regions of interest (ROI). TheROI can be obtained by image segmentation, by applying specific interestpoint detectors, by considering a regular grid, or by or simply randomsampling of image patches. For example, Scale Invariant FeatureTransform (SIFT) descriptors may be computed on each region.

For examples of each of these approaches, see, e.g., Csurka, G., Dance,C., Fan, L., Willamowski, J., and Bray, C., “Visual Categorization withBags of Key-points,” in ECCV Workshop on Statistical Learning forComputer Vision (2004); Quelhas, P., Monay, F., Odobez, J.-M.,Gatica-Perez, D., Tuytelaars, T., and Gool, L. V., “Modeling Scenes withLocal Descriptors and Latent Aspects,” in ICCV (2005), and Carbonetto,P., de Freitas, N., and Barnard, K., “A Statistical Model for GeneralContextual Object Recognition,” in ECCV (2004).

All features extracted are then mapped to the feature space andclustered to obtain the visual vocabulary. Often a simple K-means isused, however Gaussian Mixture Models (GMMs) (see, Perronnin, F., Dance,C., Csurka, G., and Bressan, M., “Adapted Vocabularies for GenericVisual Categorization,” in European Conf. on Computer Vision. (2006))can also be used to obtain a soft clustering, in-line with thecontinuous nature of visual words.

Given a new image to be classified, each feature vector is assigned toits closest visual word in the previously trained vocabulary or to allvisual words in a probabilistic manner in the case of a stochasticmodel. The histogram is computed by accumulating the occurrences of eachvisual word. Finally, the histogram is fed to a set of classifiers, forexample K nearest neighbor, probabilistic latent semantic classifiers(see, Bosch, A., Zisserman, A., and Munoz, X., “Scene Classification viapLSA.” in ECCV (2007); Quelhas, P., Monay, F., Odobez, J.-M.,Gatica-Perez, D., Tuytelaars, T., and Gool, L. V., “Modeling Scenes withLocal Descriptors and Latent Aspects,” in ICCV (2005)) or support vectormachines (see, Csurka 2004). The output of these classifiers may be anoverall category label f_(c) for the image or several category labelsf_(c) for the image.

The exemplary analyzer 46 may include a bag of visual words (BOV)-basedmulti-label categorizer of the type described above, which has beentrained on a large group of representative images (training images) thathave been manually assigned to one (or more) of the set of categories(Urban, Portrait, Flowers, Interiors, Landscape, Snow, and Sky) by anobserver. These categories tend to be representative of images found intypical imaging scenarios, although other categories may be selected orfewer or more categories used. Above-mentioned application Ser. No.11/524,100 to Perronnin, et al. for example, discloses other details ofexemplary categorizers of this type which may be used. In otherapproaches, an image can be characterized by a gradient representationin accordance with the above-mentioned application Ser. No. 11/418,949,incorporated herein by reference. In other embodiments, Fisher kernelsmay be used to identify the low-level features.

Though most of the mentioned approaches use a single visual vocabularygenerally built on the whole training set, in other embodiments,performance may be improved by adapting the visual vocabulary(universal) trained on the whole training set to each category usingcategory-specific images. An image is then characterized by a set ofbipartite histograms, one per category, where each histogram describeswhether the image content is best modeled by the universal vocabulary,or the corresponding category vocabulary. Such a method is described inapplication Ser. No. 11/170,496 to Perronnin, incorporated herein byreference.

As will be appreciated other methods of image content analysis andautomated identification of the image content related features therefrommay be employed, singly or in combination, as described for example inU.S. application Ser. Nos. 11/801,230 and 11/767,739.

Determination of Content-Based Degradation

The content-based degradation d is based on both visual content andenhancement/degradation, i.e., two images which are similarly enhancedbut have different content will be accorded a different degradation d.The determination of the degradation d for an image may includeconcatenating the identified image content features f_(c) and imageenhancement features f_(a) for the image 22 that are output by the imagecontent analyzer 46 and enhancement detector 44, respectively. Forexample, a features vector output by the enhancement detector 44 isconcatenated together with a features vector output by the image contentanalyzer 46. This concatenated vector f_(d) is input to the degradationclassifier 48, which outputs a content-based degradation d for the imagebased thereon. The classifier 48 may have been trained on a large poolof images which have been manually classified according to degradation.Such a classifier may employ support vector machines (SVM), NeuralNetworks, or other learning models in the learning.

In one exemplary embodiment, the classifier 48 outputs a singlecontent-based degradation d for the image, drawn from a finite set ofcontent-based degradations. The output degradation d may be thedegradation which is determined by the classifier 48 to be the mostprobable degradation. In other embodiments, multiple degradations may beoutput, which are ranked according to their assigned probabilities.

In other embodiments, where the enhancement detector 44 and analyzer 46both output a single enhancement and category, respectively, thedegradation classifier 48 may employ a look up table or other datastructure to identify the content based degradation, rather than atrained classifier. Each degradation class d may be identified by aunique identifier, such as a number, for retrieving related shootingtip(s) from the LUT 56.

Natural Language Generator

The natural language generator 50 translates the degradation informationinto a human readable format. The natural language generator may simplyretrieve a phrase or sentence from memory which corresponds to theclass-based degradation d. In general, each retrieved description refersto an image degradation related to an object which is specific to animage category. For example, for images categorized as “winter”, thedescription may refer to the object “snow,” such as “snow looks blue.”For portraits, the descriptions may relate to objects such as “faces,”“red eyes,” and the like.

In one embodiment, this description is supplemented with an explanationof image quality improvement (enhancement) performed. This enhancementdescription may be derived from the image quality features f_(a). Insome embodiments, the generator 50 may apply natural language processingtechniques which check the fluency of the overall generated textdescription.

Shooting Tip Look Up Table

The LUT 56 may include one or more tips 16 for each degradation d. Forexample, when a photo guide 10 is known to have been generated for aparticular customer previously, and the same degradation d is identifiedagain, or the same degradation reappears in the same photo guide, theLUT 56 may output a different shooting tip which explains the shootingtechnique in a different way, or in more detail, or provides otherinformation not previously provided. Alternatively, the shooting tipsfor a given degradation may each provide a different technique forcorrecting the degradation. Since cameras often have differentfunctions, a user may not be able to implement a proposed shooting tip16 on the user's camera. In one embodiment, the shooting tip is cameraspecific. For example, the camera make and model can be retrieved frommetadata associated with the image or from information provided by theuser and used to retrieve camera make/model specific shooting tips.

The exemplary embodiment finds application in the context of web-basedphotofinishing services and or content-sharing communities. The methodand system may also find application in the context of an imageenhancement program for personal computers.

One advantage of the photo guide 10 is that it allows the provider ofphotofinishing or other image processing services to demonstrate theadded value of the service by emphasizing, using the customers ownimages, the sophistication of the image enhancement techniques used andthe differences such techniques provide over what the customer couldachieve by printing the photos without the image enhancement techniques.Another advantage is that is provides a service to customers byidentifying techniques for avoiding image degradation in the future andthus improving image quality, since image enhancement techniques, ingeneral, are not a complete substitute for shooting high quality imageswhich need no enhancement. This allows end users to make better use ofsophisticated image capture devices having an array of features, withoutneeding to know how all the features operate, since the shooting tipsfocus on the types of photographs the user is particularly interested incapturing. By providing feedback on the utilization of AIE to print shopclients, the clients' overall satisfaction can be improved. Anotheradvantage is that it allows unsophisticated users to participate infully automated photo print-flows.

Without intending to limit the scope of the exemplary embodiment, thefollowing example describes an exemplary implementation of the disclosedsystem and method.

EXAMPLE

In this implementation of the environment and methodology illustrated inFIGS. 3 and 4, Xerox AIE (Automatic Image Enhancement) and GVC (GenericVisual Categorization) are used as image enhancement and contentanalysis modules 34, 46, respectively.

AIE module 34 generates enhanced versions of input images 22 and logfiles 60 containing information on seven enhancements (these aresharpness, color balance (white point and black point), saturation,contrast, local contrast, noise etc.) that can be applied. Table 1illustrates AIE enhancement methods taken into account for the imagequality analysis and activation threshold for a given image qualityparameter or parameters used to determine the related feature. Theobserved range is given as an example of typical values observed in apool of images. The ID is used as the index for the features vector. Theenhancement activation detection module 44 determines, according to thethreshold values given in Table 1, a feature vector f_(a) indicating thelevel of activation of each specific enhancement.

TABLE 1 ACTIVATION OBSERVED ID ENHANCEMENT METHOD THRESHOLD RANGE 0Noise >0.0 — 1 Sharpness <1.0 0.577-3.059 2 Color Balance (white point)≠0.0 0.000-2.000 3 Color Balance (black point) ≠0.0 0.000-2.000 4Saturation ≠1.0  1.0-2.000 5 Exposure >1.0 1.000-2.000 6 Globalcontrast >0.0 0.000-2.000 7 Local contrast >0.0 —

The GVC 46 categorizes the set of images according to a predefined setof trained categories (e.g., winter, beach, portraits, night lights,landscape, flowers, urban) and it outputs the results in f_(c).

The photo guide 10 presents in a document containing thumbnails of inputimages, guidelines in a human readable format according to a generaltemplate as illustrated in the example below:

DEGRADATION+ CORRECTION+ SHOOTING TIP Snow has a bluish Color balance isapplied Deactivate automatic color cast white balance when shooting snow

In the structure of the image guideline, the photo degradation isrelated to an explanation of image quality improvement (correction) andto a suggestion (shooting tip) on how to avoid the correcteddegradation. The degradation and correction components may be formulatedas a sentence, e.g., “Snow has a bluish color cast; color balance isapplied to make the snow whiter.”

The degradation classification module 48 is represented by a classifier(e.g., support vector machines (SVM), Neural Network, etc.) utilizingthe features vector f_(d)=[f_(c),f_(a)], that can be trained todetermine the image degradation d based on f_(d). Table 2 shows a listof candidate degradation classes which may be deduced from the featuresvector. The degradation list is non-exhaustive and can be expanded toaccommodate more specific classes. Each degradation d can eventually beassociated to a shooting tip (i.e. suggestion on how to avoid thedegradation at shooting time) through a static look-up table.

The classified degradation d and the list of applied corrections(enhancements) are then assembled into simple human readable sentences(photo guideline) through natural language generation techniques. Imagethumbnails are extracted by shrinking the size of the input images to afixed dimension. The photo guide assembler module 54 merges thethumbnails, and the guidelines by arranging them in a pre-defineddocument template.

Table 2 illustrates an exemplary Look-up table 56, relating degradationclasses to shooting tips.

TABLE 2 d Degradation Shooting Tip 1 Dark foreground object Use FlashOutdoor to brighten up faces 2 Blurred foreground object — 3 Red EyesIncrease distance between camera and subject. 4 Snow looks blue Usecolor balance to whiten the snow 5 Water badly shot If you have atripod, use a long exposure to achieve the silky, white look of rushingwater. 6 Foreground objects with — sunset/rise in the background 7 Flatsunset with unnatural Disable white balance and flash to colors achievea silhouette effect on foreground objects. 8 No degradation —

As illustrated in FIG. 1, the layout of the photo guide 10 complementsthe set of images printed and delivered to clients of the photofinishinglab. The header of the document contains information about the set ofprocessed images (Album), the name of owner of the images and the date.

The user can match the printed images 24 with the correspondingguideline 14 through the inspection of the thumbnails 12. Each guidelineindicates which kind of enhancement (i.e., correction) has been appliedand what has been fixed (i.e., degradation). For the benefit of theuser, a tip 16 is attached to avoid specific degradations at a futureshooting time.

In one evaluation, results were collected on four albums (sets 33 ofimages) for a total of 120 images. The images were classified andsubsequently enhanced with AIE. Log files were analyzed and featuresvectors f_(d) extracted. TABLE 3 summarizes statistics on the appliedenhancement methods. The most common combinations of active enhancements(obtained by suppressing the combinations of enhancements that activatedless than 3 times) are shown. The most frequently activated enhancementwas exposure (82%) whereas global contrast and noise removal are theless used (12.5 and 2.5% respectively).

TABLE 3 Enhancement Percent Sharpness, Color balance, White exposure,local contrast 3 Sharpness, Color balance, White exposure 13 Sharpness,Saturation, Exposure, Local contrast 4 Sharpness, Exposure, Localcontrast 22 Sharpness, Exposure 24 Sharpness, Local Contrast 8 Sharpness11 Color Balance, White Exposure, Global contrast 10 Color Balance,White Exposure 7

It will be appreciated that various of the above-disclosed and otherfeatures and functions, or alternatives thereof, may be desirablycombined into many other different systems or applications. Also thatvarious presently unforeseen or unanticipated alternatives,modifications, variations or improvements therein may be subsequentlymade by those skilled in the art which are also intended to beencompassed by the following claims.

1. An automated method for generating an image quality guide documentcomprising: for at least one image in a set of images undergoing imageenhancement: identifying image quality-related features for the imagebased on enhancements being automatically applied to the image,identifying image content-related features based on content of theimage, determining a content-based degradation of the image based on theidentified image quality-related features and image content-relatedfeatures, and retrieving a photograph shooting tip for correcting thedegradation in the image, based on the determined content-baseddegradation; generating a thumbnail of each of the images; andgenerating an image quality guide document including the thumbnails forthe images in the set of images in which at least one of the thumbnailsis associated with a respective text description that is based on thedetermined content-based degradation, the text description including theshooting tip associated with the thumbnail of the image.
 2. The methodof claim 1, wherein the method further comprises retrieving a photographshooting tip for the image based on the content-based degradation, theshooting tip comprising a suggestion for avoiding the content-baseddegradation in future, and wherein in the image quality guide document,the shooting tip is associated with the thumbnail of the image.
 3. Themethod of claim 1, wherein the identifying of image quality-relatedfeatures for the image includes identifying image quality-relatedfeatures related to a set of predefined quality-related categories. 4.The method of claim 3, wherein the identifying of image quality-relatedfeatures includes computing a features vector based on the identifiedimage quality-related features.
 5. The method of claim 1, wherein theidentifying of image quality-related features for the image includesexamining logs of image enhancements performed.
 6. The method of claim1, wherein the identifying of image quality-related features includesidentifying image enhancements applied to the image for which anidentified image quality parameter actuating the enhancement meets apredetermined threshold.
 7. The method of claim 1, wherein theidentifying of the image content-related features includes identifyingimage content-related features related to a set of predefined semanticcontent based categories.
 8. The method of claim 7, wherein theidentifying of image content-related features includes computing afeatures vector based on the identified content-related features.
 9. Themethod of claim 7, wherein the content categories include a categoryselected from the group consisting of winter, indoors, portraits,landscapes, seascapes, urban, night lights, and flowers.
 10. The methodof claim 1, wherein the identifying of the image content-relatedfeatures includes identifying low level features of the image andclassifying the image based on the low level features using a classifierwhich has been trained on images that are each manually assigned to asemantic category selected from a set of predefined semantic contentbased categories.
 11. The method of claim 1, wherein the determining ofthe content-based degradation of the image includes combining a firstfeatures vector which represents the identified image quality-relatedfeatures with a second features vector which represents the imagecontent-related features to form a combined vector and inputting thecombined vector to a degradation classifier which has been trained on apool of images which have each been manually classified according todegradation.
 12. The method of claim 1, wherein the text descriptionincludes a description of the content-based degradation and acorresponding image enhancement applied.
 13. The method of claim 1,wherein each of a plurality of the thumbnails is associated with arespective text description that is based on its determinedcontent-based degradation.
 14. The method of claim 1, wherein the imagesin the set comprise photographs.
 15. An image quality guide documentgenerated by the method of claim
 1. 16. The method of claim 1, whereinthe thumbnails comprise image data derived from the images.
 17. Anon-transitory computer program product encoding instructions, whichwhen executed on a computer causes the computer to perform the method ofclaim
 1. 18. The method of claim 1, wherein the image quality-relatedfeatures are selected from the group consisting of image contrastvalues, saturation, exposure, color balance, brightness, backgroundcolor, red eye detection, and combinations thereof.
 19. An apparatus forgenerating an image quality guide document for a set of imagescomprising: an enhancement detector which outputs image quality-relatedfeatures for images in the set based on enhancements being applied tothe images; an image content analyzer which outputs image semanticcontent-related features for images in the set the image contentanalyzer identifying low level features of the image and classifying theimage based on the low level features using a classifier which has beentrained on images that are each manually assigned to a semantic categoryselected from a set of predefined semantic content based categories; adegradation classifier which receives the output image quality-relatedfeatures and image semantic content-related features and outputs acontent-based degradation for at least one of the images in the set; anda thumbnail generator which generates thumbnails for images in the set;and an image quality guide document generator which generates an imagequality guide document for the set of images in which at least one ofthe thumbnails is associated with a respective text description that isbased on the determined content-based degradation.
 20. An imageprocessing system comprising the apparatus of claim 19, and an imageenhancement module which outputs information to the enhancement modulerelated to enhancements being applied.
 21. An image processing methodcomprising: applying at least one automated image enhancement to atleast one of a set of input images to generate a set of enhanced imagesincluding automatically evaluating image quality features for the inputimage to determine whether the image meets predetermined acceptablevalues for the image quality features; identifying image quality-relatedfeatures for the at least one input image based on a stored log of theat least one applied enhancement; identifying image content-relatedfeatures based on content of the at least one image; generatingthumbnails of the images; and generating an image quality guide documentfor the set of images in which at least one of the thumbnails isassociated with a respective text description that is based on theidentified image quality-related features and image content-relatedfeatures.